package GUI.common;

/**
 * Utilitza JAVA swing
 * 
 * Data: 26 de Novembre del 2006
 * @author Jordi Llombart Bernat
 */

import i18n.LanguageUtils;

import javax.swing.JOptionPane;



/**
 * Classe per mostrar missatges per pantalla.
 * Molts programes poden utilitzar aquesta classe
 * per mostrar informacio a l'usuari sobre el
 * funcionament de l'aplicacio.
 * 
 * Pot ser utilitzat en resposta a Excepcions
 * 
 * Data: 26 de Novembre del 2006
 * @author Jordi Llombart Bernat
 */
public class MissatgePantalla {
	public static final int ERROR=0;
	public static final int INFO=1;
	public static final int WARN=2;
	/**
	 * Metode per mostrar un missatge per pantalla classificat en:
	 * 1. Missatge d'error (tipus 0)
	 * 2. Missatge de informacio (tipus 1)
	 * 3. Missatge de perill (tipus 2)
	 * 
	 * @param tipus codifica el tipus de missatge
	 * @param txt informacio associada a la codificacio del missatge
	 */
	public static void avis (int tipus, String txt)
	{		
		switch(tipus)
		{
		case ERROR: //Missatge d'error
			JOptionPane.showMessageDialog(null, txt, LanguageUtils.getMessage("ERROR"), JOptionPane.ERROR_MESSAGE);
			break;
		case INFO: //Missatge de informacio
			JOptionPane.showMessageDialog(null, txt, LanguageUtils.getMessage("INFO"), JOptionPane.INFORMATION_MESSAGE);
			break;
		case WARN: //Missatge de perill
			JOptionPane.showMessageDialog(null, txt, LanguageUtils.getMessage("WARN"), JOptionPane.WARNING_MESSAGE);
			break;
		default:
			break;
		}
	}
	
	public static void avisI18N (int tipus, String txt){
		avis(tipus, LanguageUtils.getMessage(txt));
	}
	
	
	public static int confirm() {
		int response = confirm(LanguageUtils.getMessage("menu.Salir.estasSeguro"));
		return response;
	}
	public static int confirm(String msg) {
		int response = JOptionPane.showConfirmDialog(null, msg, "Confirm",
            JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
		return response;
	}

}
